/* eslint-disable no-undef */
import Vue from 'vue'
import router from './router'
import store from './store'
// 引入ajax
import ajax from '@/utils/ajax' // ajax请求封装
import 'nprogress/nprogress.css' // Progress 进度条样式

Vue.prototype.$ajax = ajax
router.beforeEach((to, from, next) => {
  const getFlag = localStorage.getItem(
    'Flag'
  ) /* 这里是判断用户是否登录过，因为在用户登录后会在localStroage内存储Flag=isLogin */
  if (getFlag === 'isLogin') {
    /* 如果存在Flag并且为isLogin意味着用户登录，这时修改vux内state下isLogin的状态 */
    store.state.isLogin = true
    next()
    if (!to.meta.isLogin) {
      /* 如果在有登录状态的情况下前往不需要权限的路由路径，则判定为退出登录，进行提示并跳转登录页 */
      // eslint-disable-next-line no-undef
      Toast.info('退出成功')
      next({
        path: '/Login'
      })
    }
  } else {
    if (to.meta.isLogin) {
      /* 如果没有登录状态且要去往需要权限的路径时跳转登录页并进行提示 */
      next({
        path: '/Login'
      })
      Toast.info('请先登录')
    } else {
      next()
    }
  }
})
